// pages/one/one.js
Page({
  /**
   * 页面的初始数据
   */
  data: {
    dailySentence: null, // 存储每日一句内容
    loading: false, // 加载状态
    history: [], // 历史记录
    errorMsg: '', // 存储错误信息
    apiResponse: null // 存储API的原始响应，用于调试
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.getDailySentence();
  },

  /**
   * 获取每日一句内容
   */
  getDailySentence() {
    const that = this;
    this.setData({
      loading: true,
      errorMsg: '', // 清空之前的错误信息
      apiResponse: null // 清空之前的API响应
    });
    
    try {
      // 尝试使用"每日一句英语"接口
      wx.request({
        url: 'https://apis.tianapi.com/ensentence/index',
        method: 'POST',
        data: {
          key: '1e203ed13eca269cc977e5dbc52234a6'
        },
        header: {
          'Content-Type': 'application/x-www-form-urlencoded'
        },
        success: function(res) {
          try {
            console.log('API返回数据:', JSON.stringify(res.data));
            
            // 保存原始响应用于调试
            that.setData({
              apiResponse: res.data
            });
            
            if(res.data.code == 200){
              // 处理返回的每日一句
              let sentenceData = null;
              
              if (res.data.result) {
                // 英语每日一句的数据结构
                sentenceData = {
                  content: res.data.result.en || '',
                  note: res.data.result.zh || '',
                  source: res.data.result.source || '',
                  date: res.data.result.date || new Date().toLocaleDateString()
                };
                
                // 添加到历史记录
                const history = that.data.history;
                history.unshift({
                  ...sentenceData,
                  time: new Date().toLocaleString()
                });
                
                that.setData({
                  dailySentence: sentenceData,
                  history: history.slice(0, 10) // 只保留最近10条记录
                });
              } else {
                that.setData({
                  errorMsg: '未能提取到每日一句内容'
                });
                wx.showToast({
                  title: '解析数据失败',
                  icon: 'none'
                });
              }
            } else {
              that.setData({
                errorMsg: '获取每日一句失败: ' + res.data.msg
              });
              wx.showToast({
                title: '获取数据失败: ' + res.data.msg,
                icon: 'none'
              });
            }
          } catch (processError) {
            console.error('处理API响应时出错:', processError);
            that.setData({
              errorMsg: '处理API响应时出错: ' + processError.message
            });
            wx.showToast({
              title: '处理数据时出错',
              icon: 'none'
            });
          }
        },
        fail: function(err) {
          console.error('请求失败:', err);
          that.setData({
            errorMsg: '网络请求失败: ' + JSON.stringify(err)
          });
          wx.showToast({
            title: '网络请求失败',
            icon: 'none'
          });
        },
        complete: function() {
          that.setData({
            loading: false
          });
        }
      });
    } catch (requestError) {
      console.error('发起请求时出错:', requestError);
      this.setData({
        loading: false,
        errorMsg: '发起请求时出错: ' + requestError.message
      });
      wx.showToast({
        title: '发起请求时出错',
        icon: 'none'
      });
    }
  },

  /**
   * 复制内容
   */
  copyContent() {
    if (!this.data.dailySentence || !this.data.dailySentence.content) {
      wx.showToast({
        title: '没有可复制的内容',
        icon: 'none'
      });
      return;
    }
    
    try {
      // 组合内容，包括句子和翻译
      let copyText = this.data.dailySentence.content;
      if (this.data.dailySentence.note) {
        copyText += '\n' + this.data.dailySentence.note;
      }
      if (this.data.dailySentence.source) {
        copyText += '\n——' + this.data.dailySentence.source;
      }
      
      wx.setClipboardData({
        data: copyText,
        success: function() {
          wx.showToast({
            title: '复制成功',
            icon: 'success'
          });
        },
        fail: function(err) {
          console.error('复制失败:', err);
          wx.showToast({
            title: '复制失败',
            icon: 'none'
          });
        }
      });
    } catch (copyError) {
      console.error('复制内容时出错:', copyError);
      wx.showToast({
        title: '复制内容时出错',
        icon: 'none'
      });
    }
  },

  /**
   * 刷新获取新内容
   */
  refreshContent() {
    this.getDailySentence();
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    // 页面显示时如果没有内容则刷新
    if (!this.data.dailySentence) {
      this.getDailySentence();
    }
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {
    // 页面卸载时的处理
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
    this.getDailySentence();
    wx.stopPullDownRefresh();
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {
    if (this.data.dailySentence && this.data.dailySentence.content) {
      return {
        title: this.data.dailySentence.content,
        path: '/pages/one/one'
      };
    }
    return {
      title: '每日一句',
      path: '/pages/one/one'
    };
  }
})